home *** CD-ROM | disk | FTP | other *** search
/ Suzy B Software 2 / Suzy B Software CD-ROM 2 (1994).iso / prntutil / jetemu / jetemu.doc < prev    next >
Text File  |  1995-04-25  |  5KB  |  127 lines

  1. JETEMU.PRG V1.0x
  2.  
  3. Disclaimer:
  4. This program is public domain and may be copied and distributed free 
  5. of charge, provided that all files are included (that is:
  6. JETEMU.PRG
  7. JETEMU.DOC
  8. PGS1.PRT)
  9.  
  10. There are no garanties concerning its performance. I am not 
  11. responsible for any damage resulting from its use.
  12.  
  13. --------------------------------------------------
  14.  
  15. This little program arose out of the need to verify printer data that
  16. is being sent to the DeskJet printer family. Ever since working with 
  17. the SPECTRE MacIntosh Emulator I experienced some odd things about 
  18. printing to the DeskJet from this setup. The printer would choke on 
  19. data, then stop for a while and pick up printing after it had lost half 
  20. a page or so of data.
  21.  
  22. Using a Null Modem cable between to STs, printing to the modem port 
  23. from the ST running SPECTRE and receiving on the real ST with STALKER, 
  24. running a little program that writes the received bytes straight to 
  25. disk I am able to capture the stuff that would normally be sent to the 
  26. DeskJet.
  27.  
  28. Not unlike PostScript╛, the printer language of the DeskJet (HP PCL III) 
  29. is quite readable (Ok, not quite as readable...). So I started to scan 
  30. the printer data for maybe corrupt sequences that could cause the 
  31. printer to choke. However, on a regular 8.5x11" page those are up to 
  32. 3300 lines of data. So I started writing a little interpreter (in 
  33. PostScript╛ they call that Display Postscript). And JetEmu is the 
  34. result.
  35.  
  36. It has only one function: Load a DeskJet printer file (that has been 
  37. created on disk by any application capable of doing so), and displaying 
  38. the resulting page on the screen. Each dot on the screen thereby 
  39. represents one dot sent to the printer. Since most printing is done in 
  40. 300dpi one inch on paper is blown up to about half a screen. But at 
  41. least you can see some details. So JetEmu can also be used as print 
  42. preview for all programs that can _print to disk_ with a DeskJet 
  43. driver.
  44.  
  45. When you run JetEmu you are presented with a file selector. You can 
  46. select any file, however, non-printer files could cause trouble. There 
  47. is only a limited format check (all printer drivers I know send a 
  48. Dots-Per-Inch command before sending any data, therefore if JetEmu 
  49. doesn't find such a command it won't process the file).
  50.  
  51. Current limitations:
  52. 1) At the moment the two compaction modes in HP PCL III are not 
  53. decoded. I am working on this, but couldn't get any information yet, 
  54. of how to decode this. It is time consuming to try to find out by 
  55. myself.
  56. 2) ONLY graphic commands are displayed on screen. This means that 
  57. straight ASCII characters in a print file will be ignored.
  58.  
  59. Most DeskJet printer files come in very respectable sizes. Output from 
  60. Pagestream can be up to 1.5 Meg per page (depending on how dense the 
  61. page is). In addition JetEmu builds up a virtual page in RAM. For a 
  62. 8.5x11" page the virtual page is around 1 Meg. So under 2.5 Meg of 
  63. RAM it is probably problematic to run the program.
  64.  
  65. I tried to make the program consistent with GEM rules, although I 
  66. don't have any other hardware than a monochrome ST/MegaSte. It works 
  67. on the MONSTER big screen emulation. It will not work in color, at 
  68. the moment!
  69.  
  70. Here are the menu selections:
  71.  
  72. JetEmu
  73.     About JetEmu...
  74.         You know what...
  75.  
  76. Other
  77.     Open...
  78.         To load another file select this option. After the file has 
  79.         been successfully loaded, it may take a few seconds (up to 30), 
  80.         until the the virtual page is ready. The busy bee tells you 
  81.         that the computer didn't crash.
  82.  
  83.     Info...
  84.         DPI:                resolution of the printer file
  85.  
  86.         Virtual Page Width: width in pixels of virtual page (2550 at 
  87.                             8.5")
  88.  
  89.         Virtual Page Height:height in pixels of virtual page (3300 at 
  90.                             11")
  91.  
  92.         RAM used:           The virtual page uses this amount of your 
  93.                             RAM (~(DPI*(Page Width/8)*Page Height)
  94.  
  95.         File size:          Size of your original printer file.
  96.  
  97.             Click Ok to go on.
  98.  
  99.     Goto...
  100.         Enter directly where you want to go on the virtual page. ALL 
  101.         values are accepted, try to stay pretty much within the virtual 
  102.         page area (after all what you see on the screen is a portion of 
  103.         the ST RAM, so too high values can easily get into protected 
  104.         memory locations).
  105.  
  106.         Ok to go with the values
  107.  
  108.         Cancel to abort.
  109.  
  110.     Quit
  111.         What do you think?
  112.  
  113.  
  114. All window gadgets work as you would expect and the program uses 
  115. VDI/AES exclusively, so it should work on most machines. (Not yet 
  116. color).
  117.  
  118.  
  119. As time permits I would like to fix the problems and add features:
  120. 1) color support
  121. 2) decode HP compacted graphics
  122. 3) emulate other printers (loadable modules)
  123. 4) suggestions are welcome, source code available
  124. Bloomington, 1/24/93
  125.  
  126.  
  127.